package com.ihr360.commons.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.PARAMETER;

@Target({FIELD, PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface CodeGenerator {

    String name() default "";

    String bizModel() default "";

    boolean isForCompany() default false;

    String separator() default "";

    String serialTmpl() default "";

    /**
     * 相同序列号模板的标识分组
     * @return
     */
    String categoryId() default "";

    int length() default 4;

    boolean autoIncrement() default false;

    /**
     * 流水号限制长度
     * */
    int maxLength() default 60;
}
